package com.cskaoyan.service;

import com.cskaoyan.bean.Info;
import com.cskaoyan.bean.data.BaseData;
import com.cskaoyan.bean.param.AdminParam;
import com.cskaoyan.bean.bo.AuthPermissionsBO;
import com.cskaoyan.bean.pojo.Admin;
import com.cskaoyan.bean.pojo.Log;
import com.cskaoyan.bean.vo.RoleOptionsVo;

import com.cskaoyan.bean.vo.RolePermissionVO;


import java.util.List;

/**
 * @author ：dailin
 * @date ：
 * @description：
 */

public interface AdminService {

    BaseData<Admin> selectAllAdmin(AdminParam adminParam);


    /**
     * 后面的都是shiro权限的
     * @param username
     * @return
     */
    Admin selectAdminByUsername(String username);

    String selectPasswordByUsername(String username);

    Info selectAdminInfoByUsername(String username);

    List<String> selectRoleNameListByIds(Integer[] roleIds);

    List<String> selectPermsByRoleId(Integer roleId);


    List<RoleOptionsVo> selectAllRole1();

    Integer addAdmin(Admin admin);

    int deleteAdmin(Admin admin);

    Admin updateAdmin(Admin admin);

    BaseData<Log> logList(AdminParam adminParam);


    RolePermissionVO getPermissions(Integer roleId);

    void roleAuthorization(AuthPermissionsBO permissionsBO);

}
